﻿using System.ComponentModel.DataAnnotations;

namespace eLoan.Models
{
    public class UserAccessModel
    {

        #region Administration

        [Display(Name = "Administration")]
        public bool HasAdministrationAccess { get; set; }

        [Display(Name="Users")]
        public bool HasUsersAccess { get; set; }

        [Display(Name = "Branches")]
        public bool HasBranchesAccess { get; set; }

        [Display(Name = "Banks")]
        public bool HasBanksAccess { get; set; }

        [Display(Name = "Agents")]
        public bool HasAgentsAccess { get; set; }

        [Display(Name = "Loan Types")]
        public bool HasLoanTypesAccess { get; set; }

        [Display(Name = "Charge Types")]
        public bool HasChargeTypesAccess { get; set; }

        [Display(Name = "Payment Types")]
        public bool HasPaymentTypesAccess { get; set; }

        [Display(Name = "Notifications")]
        public bool HasNotificationsAccess { get; set; }

        #endregion

        #region Masterfile

        [Display(Name = "Masterfile")]
        public bool HasMasterFilesAccess { get; set; }

        [Display(Name = "Address Book")]
        public bool HasAddressBookAccess { get; set; }

        [Display(Name = "Prospects")]
        public bool HasProspectsAccess { get; set; }

        #endregion

        #region Fundings

        [Display(Name = "Fundings")]
        public bool HasFundingsAccess { get; set; }

        [Display(Name = "Create Loan")]
        public bool HasLoansAccess { get; set; }

        [Display(Name = "Cancel Loan")]
        public bool HasCancelLoanAccess { get; set; }

        [Display(Name = "Print Cheque")]
        public bool HasPrintChequeAccess { get; set; }

        [Display(Name = "Print Contract")]
        public bool HasPrintContractAccess { get; set; }

        [Display(Name = "Release to Branch")]
        public bool HasReleaseToBranchAccess { get; set; }

        [Display(Name = "Release to Customer")]
        public bool HasReleaseToCustomerAccess { get; set; }

        #endregion

        #region Workspace

        [Display(Name = "Workspace")]
        public bool HasWorkspaceAccess { get; set; }

        [Display(Name = "Loan Payment")]
        public bool HasLoanPaymentAccess { get; set; }

        [Display(Name = "Cheque Clearing")]
        public bool HasChequeClearingAccess { get; set; }

        [Display(Name = "Loan Penalty")]
        public bool HasLoanPenaltyAccess { get; set; }

        [Display(Name = "Void Loan Payment")]
        public bool HasVoidLoanPaymentAccess { get; set; }

        [Display(Name = "Request Close Loan")]
        public bool HasRequestCloseLoanAccess { get; set; }

        [Display(Name = "Close Loan")]
        public bool HasCloseLoanAccess { get; set; }

        [Display(Name = "Loan Notification")]
        public bool HasLoanNotificationAccess { get; set; }

        [Display(Name = "Daily Collection Reconciliation")]
        public bool HasDailyCollectionReconciliationAccess { get; set; }

        #endregion

        #region Reports

        [Display(Name = "Reports")]
        public bool HasReportsAccess { get; set; }

        [Display(Name = "Agent Itinerary")]
        public bool HasAgentItineraryAccess { get; set; }

        [Display(Name = "Collection Report")]
        public bool HasCollectionReportAccess { get; set; }

        [Display(Name = "Sales Report")]
        public bool HasSalesReportAccess { get; set; }

        [Display(Name = "Cheque Report")]
        public bool HasChequeReportAccess { get; set; }

        [Display(Name = "Savings Report")]
        public bool HasSavingsReportAccess { get; set; }

        [Display(Name = "Statement of Account")]
        public bool HasSOAAccess { get; set; }

        [Display(Name = "Penalty History")]
        public bool HasPenaltyHistoryAccess { get; set; }

        [Display(Name = "Closed Loans Report")]
        public bool HasClosedLoansReportAccess { get; set; }

        [Display(Name = "Due Payments")]
        public bool HasDuePaymentsAccess { get; set; }

        [Display(Name = "Daily Collection Reconciliation Report")]
        public bool HasDailyCollectionReconciliationReportAccess { get; set; }

        [Display(Name = "Aging Report")]
        public bool HasAgingReportAccess { get; set; }

        #endregion

    }

}